package com.bzkj.basicinfo.mapper;

import com.bzkj.basicinfo.domain.basic.vo.NccBasicBillsTypeTree;
import com.bzkj.basicinfo.domain.ncc.NccBasicBillsType;
import com.bzkj.basicinfo.domain.ncc.erp.BillTypeBean;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Set;

public interface NccBasicBillsTypeMapper {

    /**
     * 根据code查询ncc单据分类
     * @param code
     * @return
     */
    NccBasicBillsType queryNccBasicBillsType(String code);

    /**
     *NCC单据分类-如果能根据code查询到，修改数据
     * @param customer
     */
    void updateNccBasicBillsType(NccBasicBillsType customer);

    /**
     *NCC单据分类-如果不能根据code查询到，新增数据
     * @param customer
     */
    void insertNccBasicBillsType(NccBasicBillsType customer);

//    新增的单据分类数据都动态的去创建一张表
//    void createNccBasicBillsTypeTable(@Param("tableName") String tableName);

    /**
     *NCC单据分类-如果能根据code查询到，修改数据
     * @param customer
     */
    void NccBasicBillsTypeUpdate(NccBasicBillsType customer);

    Set<String> findNccBasicpkMeasdocSetList(@Param("pkMeasdoc") List<String> pkMeasdoc);

    List<NccBasicBillsTypeTree> findAllBasicBillsType();

    /**
     * 插入或新增单据分类数据
     * @param billTypeBean 单据分类
     */
    void insertOrUpdate(@Param("item") BillTypeBean billTypeBean);
}
